1. Field of the Invention
The present invention relates to an information processing apparatus, a control method thereof, and a storage medium.
2. Description of the Related Art
In recent years, an application operating environment, of which JAVA® is a representative example, has been proposed for an image forming apparatus. A technique has been proposed that uses the portability of a program that includes JAVA® to provide expandable applications. In order to enhance the functions or usability of the image forming apparatus, an application is created that is operated in an environment such as a JAVA® environment and is installed on the image forming apparatus to thereby realize a desired function by the application.
There is OSGi, which is a JAVA® application platform for an embedded device, as an application platform (“OSGi Service Platform Release 4”, October 2005). The OSGi is an abbreviation for Open Services Gateway Initiative Service Platform, and is hereinafter described as OSGi. The OSGi defines a bundle as a software module management unit, and defines a specification for managing a lifecycle that consists of install/startup/stop/update/uninstall. In this context, the bundle designates a JAVA® module, and is the same definition as an application in the present invention. This type of application platform enables provision to the application of embedded functions such as copying, scanning and printing.
There are specifications of a host bundle and a fragment bundle in the specification of the OSGi. The host bundle designates a bundle that includes addition of the fragment bundle. The fragment bundle does not operate independently and is a bundle having the form adding (attaching) the bundle itself in the class loader space of the host bundle. During revision or extension of an application, use of the fragment bundle for revision or extension of the host bundle functions enables a reduction in the file size to be installed and efficient distribution of the module. In the present situation, there is no limitation in relation to the number of fragment bundles installed onto the host bundle on an OSGi specification.
However, the specification of the current OSGi does not include a feature in which a limitation is added to the possible number of fragment bundles that are added to a single corresponding host bundle. For example, when a user has the intention to use the application in the form of a trial copy, it is not possible to discriminate from the normal application by provision a fixed limitation on the additional number of fragment bundles in the trial copy.